/**
 * 
 */
package tracing;

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

import wdmsim.Constants;
import wdmsim.Simulator;
import events.CrankbackEvent;
import events.DestroyLightpathEvent;
import events.Event;
import events.RouteRequestEvent;
import events.UpdateEvent;

/**
 * @author alissonslp
 *
 */
public abstract class Trace {

	
	public abstract void addEvent(Event event);
	
	public abstract void showAllResults(long begin);

	public abstract void reportBlockedCall(Event event);
	
	public abstract void reportLightpathCreated(RouteRequestEvent event);
	
	public abstract void reportIntradomainLightpathCreated(Event event);
	
	public abstract void reportCrankBackEvent(RouteRequestEvent event);

	public abstract void traceSetup(int numNodes, int i, int j);
	
	public abstract void cleanVariables();
	
	public abstract void reportUpdateMessage();
	
	public abstract void reportFlowInserting(RouteRequestEvent event);

}
